package com.hsh.erp.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @TableName order
 */
@TableName(value = "`order`")
@Data
@Accessors(chain = true)
public class Order implements Serializable {
    /**
     *
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 店铺id
     */
    private Integer shopId;

    /**
     * 线上订单号（同1个店铺id对应n个商品，线上订单号已存在时,无法导入，只能手动新增，收件人地址需要去除特殊符号）
     */
    private String no;

    /**
     * 合并订单号，多个订单号用“,”区分
     */
    private String mergeNo;

    /**
     * 商品id
     */
    private Integer productId;

    /**
     * 仓库id
     */
    private Integer repositoryId;

    /**
     * 订单总重量:g
     */
    private Integer weightGram;

    /**
     * 订单数量：散装库存
     */
    private Integer planNum;

    /**
     * 实际数量：散装库存
     */
    private Integer actualNum;

    /**
     * 0-未完成 1 -已完成 （同一个订单号，所有商品的订单数量=所有订单的所有实际入库数量，才可以设置为已完成）
     */
    private Integer isFinish;

    /**
     * 收件人姓名
     */
    private String customerName;

    /**
     * 收件人地址
     */
    private String customerAddress;

    /**
     * 收件人电话
     */
    private String customerPhone;

    /**
     * 付款时间
     */
    private LocalDateTime payTime;

    /**
     * 打印时间
     */
    private LocalDateTime printTime;

    /**
     * 快递单号
     */
    private String expressNum;

    /**
     * 快递id
     */
    private Integer expressId;

    /**
     * 订单导入时间
     */
    private LocalDateTime createTime;

    /**
     * 备注
     */
    private String note;
    
    /**
     * 是否删除 0-未删除 1-已删除
     */
    private Integer isDelete;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;


}